1. Field of the Invention
The present invention relates to a compiling system under distributed environment where a plurality of different types of computers are interconnected by a network.
2. Description of the Prior Art
FIG. 10 is a flow chart of a source program from translation to execution. The source program 101 is compiled by a compiler 103 after being processed by a pre-processing system 102. The output of the compiler 103 is an assembler language program, machine language codes which can be almost directly executed, or machine language codes containing information which can be located on any area of a memory device. When the output of the compiler 103 is an assembler language program, an assembler 104 receives the program and converts it into relocatable codes. A linkage editor 105 collects some of the relocatable codes from a library 106 to link them, and replaces code references for separately compiled programs with addresses when the programs are loaded on the memory device. The above processes are generally performed on a single machine, and an object code 107 is obtained.
Such processes, for example, appear on "1.3 Compiler and Programming Environment" (pp. 10 to 11) of "Iwanami Koza Software Chemistry--5, Programming Language Processing System".
FIG. 9 is a schematic diagram of the configuration of a computer network. Since the computer network is configured in such a way that system resources (such as hardware, software and databases) are interconnected so that they can be shared, and a plurality of computers having independent functions are connected to the network so that the exchange and shared use of information among the computers are possible, the system resources can be shared by the computers, the hardware and software functions of other computers can be used, or databases managed by other computers can be accessed. In FIG. 9, the network consists of computers 1 to 3 and terminals 4 to 11.
Such a computer network, for example, is described in "1-2-1-1 Distributed Processing System of Computer Network" (pp. 1019 to 1120) of the Illustrated Computer Encyclopaedia published by Ohm.
The operation of this computer network will be described hereafter.
A conventional compiling system compiles a source file prepared by a user's machine holding a library and a compiler of its own. However, this results in the existence of a plurality of compilers of the same type over the network, not making the most of the advantage a computer network can have in sharing and exchanging information. Take the example where the computers 1 and 2 are of the same type, the computer 3 is of a different type, the computer 1 does not have a compiler, and the computers 2 and 3 have each a compiler and a library of their own. In this case, the compiling system over the network when a user prepares a source file on the computer 1 is one in which the source file is transferred to the computer 2 for compilation and linkage on the computer 2, and a resultant object file is transferred to the computer 1. In this compiling system, the user needs to operate all transfers deliberately, resulting in a burden on the user. In another example, the computer 1 and 2 are of the same type, the computer 3 is of a different type, and the computer 2 has a cross compiler of the computer 3. In this case, the compiling system when a user prepares on the computer 2 a file to be executed on the computer 3 is one in which a source file prepared on the computer 2 is cross-compiled on the computer 2 and a resultant object file is transferred to the computer 3. However, in this system, the user must perform the transfer himself, also resulting in a burden on the user.
In such conventional systems, computers of the same type each have the same compiler and related libraries, and the disk memory of the machine is occupied by the compiler and the libraries under distributed environment. In addition, a user needs to purchase software to install the compiler and the libraries, and also needs to perform many data input/output operations to compile a source file on another machine, thus taking extra time and labor.
Another conventional compiling system is one in which a source file is compiled by a single large computer with a variety of microprocessor software using a time sharing system (TSS). The problems seen in a compiling system using TSS are the heavy load falling on a host computer and the inability to use microprocessor software other than that offered by the system, resulting in lack of extendibility.